package com.csap.framework.oauth2;

import cn.dev33.satoken.LoginUtil;

/**
 * 用户service
 *
 * @author yangchengfu
 * @dataTime 2021年-05月-16日 00:15:00
 **/
public interface FindUserService {
    /**
     * 模式
     *
     * @return 用户信息模式
     */
    UserInfoMod mod();

    /**
     * 获取token
     *
     * @return accessToken
     */
    default String accessToken() {
        return LoginUtil.getInstance().getTokenValue();
    }

    /**
     * 根据ID获取用户信息
     *
     * @param loginId   用户ID
     * @param loginType 登录的类型
     * @return 用户信息
     */
    UserInfo findByUserId(Object loginId, String loginType);

    /**
     * 根据ID获取用户信息
     *
     * @param loginId 用户ID
     * @return 用户信息
     */
    UserInfo findByUserId(Object loginId);

    /**
     * 根据ID获取用户信息
     *
     * @return 用户信息
     */
    UserInfo findByUserId();

}
